<% if (props.navigationPackage?.options.type === 'stack') { %>
	import { createStaticNavigation, StaticParamList } from '@react-navigation/native';
	import { createStackNavigator } from '@react-navigation/stack';
	import Overview from "../screens/overview";
	import Details from "../screens/details";
  import { BackButton } from '../components/BackButton';

	const Stack = createStackNavigator({
    screens: {
      Overview: {
        screen: Overview,
      },
      Details: {
        screen: Details,
        options: ({ navigation }) => ({
          headerLeft: () => <BackButton onPress={navigation.goBack} />,
        })
      },
    }
  });

  type RootNavigatorParamList = StaticParamList<typeof Stack>;

  declare global {
    namespace ReactNavigation {
      // eslint-disable-next-line @typescript-eslint/no-empty-object-type
      interface RootParamList extends RootNavigatorParamList {}
    }
  }

  const Navigation = createStaticNavigation(Stack);
  export default Navigation;

<% } else if (props.navigationPackage?.options.type === 'tabs') { %>
  import { createStaticNavigation, StaticParamList } from '@react-navigation/native';
	import { createStackNavigator } from "@react-navigation/stack";
	import Modal from "../screens/modal";
	import TabNavigator from "./tab-navigator";


	const Stack = createStackNavigator({
    screens: {
      TabNavigator: {
        screen: TabNavigator,
        options: {
          headerShown: false,
        },
      },
      Modal: {
        screen: Modal,
        options: {
          presentation: "modal",
          headerLeft: () => null,
        },
      },
    }
  });

  type RootNavigatorParamList = StaticParamList<typeof Stack>;

  declare global {
    namespace ReactNavigation {
      // eslint-disable-next-line @typescript-eslint/no-empty-object-type
      interface RootParamList extends RootNavigatorParamList {}
    }
  }

  const Navigation = createStaticNavigation(Stack);
  export default Navigation;

<% } else if (props.navigationPackage?.options.type === 'drawer + tabs') { %>
	  import { createStaticNavigation, StaticParamList } from '@react-navigation/native';
		import { createStackNavigator } from '@react-navigation/stack';
		import Modal from "../screens/modal";
		import DrawerNavigator from "./drawer-navigator";

	
    const Stack = createStackNavigator({
      screens: {
        DrawerNavigator: {
          screen: DrawerNavigator,
          options: {
            headerShown: false,
          },
        },
        Modal: {
          screen: Modal,
          options: {
            presentation: "modal",
            headerLeft: () => null,
          },
        },
      }
    });

    type RootNavigatorParamList = StaticParamList<typeof Stack>;

    declare global {
      namespace ReactNavigation {
        // eslint-disable-next-line @typescript-eslint/no-empty-object-type
        interface RootParamList extends RootNavigatorParamList {}
      }
    }

    const Navigation = createStaticNavigation(Stack);
  export default Navigation;
	
<% } %>
